package com.tbit.main.service;

import com.tbit.main.common.JsonResult;
import com.tbit.main.pojo.AccountDataMain;
import com.tbit.main.pojo.AccountDayStat;
import com.tbit.main.pojo.AccountDayUM;
import com.tbit.main.pojo.VO.AccountDataMainVO;

import java.util.List;

/**
 * @author LMY
 * @create 2022-11-09 16:27
 */
public interface AccountDayStatService {

    /**
     * 根据区域和时间查询
     *
     * @param brandId
     * @param accountIds
     * @param startTime
     * @param endTime
     * @return
     */
    List<AccountDayStat> getBrandIdAccountIdType(Integer brandId, String accountIds, String startTime, String endTime);

    /**
     * 查询运营数据
     *
     * @return
     */
    AccountDataMain getMachine(Integer brandId, String accountIds, String startTime, String endTime);

    /**
     * 查询运营数据
     *
     * @return
     */
    AccountDayUM getByAccountIdUM(Integer brandId, String startTime, String endTime);

    /**
     * 根据区域，类型，时间，分组
     *
     * @param accountIds
     * @param dataType
     * @param startTime
     * @param endTime
     * @return
     */
    List<AccountDayStat> getAccountIdsTypeDate(List<Integer> accountIds, Integer dataType, String startTime, String endTime);

    /**
     * 设备折线图统计
     *
     * @param brandId    品牌id
     * @param accountIds 区域id
     * @param startTime  开始时间
     * @param endTime    结束时间
     * @return 。
     */
    JsonResult<List<AccountDataMainVO>> groupMachineByDay(Integer brandId, String accountIds, String startTime, String endTime);

}
